export function debounce(func,delay){
  //用这个timer来记录有没有计时器
  let timer=null;
  return  function (...args) {
    //清除timer
    if(timer)clearTimeout(timer)
    //重新计时
    timer=setTimeout(()=>{
      func.apply(this,args)
    },delay)
  }
}
/*事件监听的相关方法
 *  传入函数 和时间
 * */
export function formatDate(date,fmt) {
   if(/(y+).test(fmt)/){
     //RegExp.$1 表示第一个子字符串
     fmt=fmt.replace(RegExp.$1,(date.getFullYear()+" ").substr(4-RegExp.$1.length))
   }
   let o={
     'M+':date.getMonth()+1,
     'd+':date.getDate(),
     'h+':date.getHours(),
     'm+':date.getMinutes(),
     's+':date.getSeconds()
   }
   for(let k in o){
      if (new RegExp(`(${k})`).test(fmt)){
        let str=o[k]+'';
        fmt=fmt.replace(RegExp.$1,(RegExp.$1.length===1)?str:padLeftZero(str))
      }
   }
   return fmt
}
function padLeftZero(str) {
  //04
  return ('00'+str).substr(str.length);

}
